//
// Created by Castle-Moriarty on 2025/11/8.
//

#include <cstring>
#include <iostream>
#include <cstring>

using namespace std;

// Function template
template<typename T> T maximum(T a,T b) {
    return (a > b) ? a : b;
}

const char *maximun(const char *a,const char *b) {
    return (strcmp(a,b) > 0) ? a : b;
}

// overload through templates.Will take precedence over raw T
template<typename T> T *maximum(T *a,T *b) {
    return (*a > *b) ? a : b;
}

int main() {
    const char *g {"wild"};
    const char *h{"animal"};
    const char *result = maximum(g, h);

    return 0;
}